# -*- coding: utf-8 -*-
__author__ = 'lztkdr'
__date__ = '2020/3/29 18:39'

from matplotlib import pyplot as plt

# 处理显示中文乱码的情况
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

# ==========================================================================

x = range(11,31)
# 我
y_1 = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
# 同桌
y_2 = [1,0,3,1,2,2,3,3,2,1 ,2,1,1,1,1,1,1,1,1,1]

# ==========================================================================

# ==========================================================================

"""
r 红色
g 绿色
b 蓝色
w 白色
c 青色
m 洋红
y 黄色
k 黑色

- 实线
--虚线
-.点划线
: 点线

"""


# 折线图
# label ：指定图例的说明文字
# color : 指定线条颜色
# linestyle : 线条样式
# linewidth : 线条粗细
#  alpha ：线条透明度

# 图例 文字使用方式1： plot时 直接指定 label
plt.plot(x,y_1,label='自己',color='r',linestyle=':',linewidth=1,alpha=0.5)
# 散点图
plt.scatter(x,y_1,color='r',linestyle='-.')

# 折线图
# label ：指定图例的说明文字
# color : 指定线条颜色
plt.plot(x,y_2,label='同桌',color='g',linestyle='-.')
# 散点图
plt.scatter(x,y_2,color='g',linestyle='-.')

# 图例
# 通过看源码，可以得出 使用 loc 指定图例显示的位置
# loc 默认值是 best 。
plt.legend(loc='upper left')
# 图例 文字使用方式2：
plt.legend(('我','同桌'),loc='upper left')
# ==========================================================================


xtick_labels = ["{}岁".format(i) for i in x]
plt.xticks(x,xtick_labels)
plt.yticks(range(0,9))

plt.xlabel("岁数")
plt.ylabel("男/女朋友个数")
plt.title("我与同桌的11岁到30岁之前男/女朋友个数情况")

#绘制网格
plt.grid()
#绘制0.1透明度的网格
plt.grid(alpha=0.2,linestyle=':',linewidth=1)


plt.show()